// //微信全局方法

// import GameCtr from "./GameCtr";
// import Http from "../Common/Http";
// import UserManager from "../Common/UserManager";
// import UrlConfig from "../Common/UrlConfig";

// const { ccclass, property } = cc._decorator;

// enum Message_Type {
//     Get_SelfData,                       //获取自己信息
//     Get_FriendData,                     //获取好友排行榜数据
//     Get_GroupData,                      //获取群排名
//     Submit_SelfScore,                   //提交自己得分
//     Compare_Score,                      //比较自己与好友得分
//     Show_WholeRanking,                  //显示完整排行榜   
//     Show_OverRanking,                   //显示结束排行榜
//     Close_WholeRanking,                 //关闭好友排行
//     Close_OverRanking,                  //关闭结束排行
// };

// const I6P = {
//     w: 414.0,
//     h: 667.0
// };

// @ccclass
// export default class WXCtr {

//     static wxLoginSuccess: boolean = false;
//     public static shareTitle;
//     public static shareImg;
//     public static _shareTitlearr = [];
//     public static _shareImgarr = [];
//     static launchOption;
//     static userInfoBtn;
//     public static videoAd = null;
//     public static bannerAd = null;
//     static screenWidth;
//     static screenHeight;
//     static widthRatio;
//     static heightRatio;
//     static advid = null;
//     static Height = null;
//     static videoAdCallback = null;
//     static outvideoAdCallback = null;
//     static sharenum = 0;
//     constructor() {

//     }

//     //获取启动参数
//     static getLaunchOptionsSync() {
//         if (tt != undefined) {

//             WXCtr.launchOption = tt.getLaunchOptionsSync();
//             console.log("获取启动参数", WXCtr.launchOption);

//             let fileMgr = wx.getFileSystemManager();
//             fileMgr.getSavedFileList({
//                 success: (res) => {
//                     console.log("获取本地缓存文件列表成功", res);
//                 },
//             });
//         }
//     }

//     //创建用户授权按钮
//     static createUserInfoBtn() {
//         if (tt != undefined) {
//             let screenWidth;
//             let screenHeight;
//             let widthRatio;
//             let heightRatio;
//             wx.getSystemInfo({
//                 success: (res) => {
//                     WXCtr.Height = res.windowHeight;
//                     console.log("获取设备信息成功", res);
//                     screenWidth = res.screenWidth;
//                     screenHeight = res.screenHeight;
//                     widthRatio = screenWidth / I6P.w;
//                     heightRatio = screenHeight / I6P.h;
//                 }
//             });

//             WXCtr.userInfoBtn = wx.createUserInfoButton({
//                 type: 'image',
//                 image: '/res/raw-assets/resources/texture/ranking/authBtn.png',
//                 style: {
//                     left: (screenWidth / 2) - (100 * widthRatio),
//                     top: (screenHeight / 2) + (20 * heightRatio),
//                     width: 200 * widthRatio,
//                     height: 50 * heightRatio,
//                 }
//             });

//             WXCtr.userInfoBtn.hide();

//             WXCtr.userInfoBtn.onTap((res) => {
//                 console.log("UserInfoBtn tap", res);
//                 if (res.userInfo) {
//                     GameCtr.ins.mRanking.showAuthTip(false);
//                     WXCtr.wxOnLogin(res.userInfo);
//                 }
//             });
//         }
//     }

//     //对比自己的分数和好友的Compare_Score
//     static submitScoreToWxComparetFriend(score) {
//         if (tt) {
//             console.log("主域发送消息____提交分数");
//             tt.postMessage({
//                 messageType: Message_Type.Compare_Score,
//                 LIST_KEY: "Rank_Data",
//                 score: score,
//             });
//         }
//     }


//     static getStorageData(key, callback = null) {
//         console.log('tttt'.tt)
//         if (tt) {
//             tt.getStorage({
//                 key: key,
//                 success: (resp) => {
//                     if (callback) {
//                         callback(resp.data);
//                     }
//                 },
//                 fail: (resp) => {
//                     if (callback) {
//                         callback(null);
//                     }
//                 },
//             });
//         }
//     }

//     static setStorageData(key, data) {
//         if (tt != undefined) {
//             tt.setStorage({
//                 key: key,
//                 data: data,
//                 success: (resp) => {

//                 }
//             });
//         }
//     }

//     //显示分享按钮
//     static showShareMenu() {
//         if (tt != undefined) {
//             console.log("显示分享按钮！！！！！！");
//             tt.showShareMenu({
//                 withShareTicket: true,
//                 success: (res) => {
//                     console.log("showShareMenu success", res);
//                 },
//                 fail: (res) => {
//                     console.log("showShareMenu fail", res);
//                 },
//                 complete: (res) => {
//                     console.log("showShareMenu compltete", res);
//                 }
//             });
//         }
//     }

//     //监听小游戏回到前台的事件
//     static onShow(callback = null) {
//         console.log("监听小游戏回到前台的事件");
//         console.log("callback", callback);
//         if (tt != undefined) {
//             tt.onShow((res) => {
//                 console.log("小游戏回到前台回调", res);
//                 console.log("callback", callback);
//                 if (callback) {
//                     console.log("回调函数");
//                     callback();
//                 }
//             });

//         }
//     }

//     //取消监听小游戏回到前台的事件
//     static offShow() {
//         if (tt != undefined) {
//             console.log("取消监听小游戏回到前台的事件");
//             tt.offShow();

//         }
//     }

//     //预览图片
//     static previewImg(imgUrl) {
//         if (tt != undefined) {
//             wx.previewImage({
//                 urls: [imgUrl],
//                 success: (res) => {
//                     console.log("预览图片成功回调", res);
//                 }
//             });
//         }
//     }

//     //保存图片到本地相册
//     static saveImge(imgUrl, callback?: Function) {
//         if (tt != undefined) {
//             wx.downloadFile({
//                 url: "https://file.zxles.com/pyramidGame/official/public/pyramid-game.png",
//                 success: (resp) => {
//                     console.log("下载图片成功", resp);
//                     wx.saveImageToPhotosAlbum({
//                         filePath: resp.tempFilePath,
//                         success: (res) => {
//                             console.log("图片保存到本地相册成功", res);
//                             if (callback) {
//                                 callback(true);
//                             }
//                         }
//                     });
//                 },
//             });
//         }
//     }

//     //登录微信
//     static wxOnLogin(userInfo = null) {
//         if (tt != undefined) {
//             //登录微信
//             tt.login({
//                 success: function (loginResp) {
//                    // GameCtr.ttttttt();

//                     console.log("微信登录返回值res", loginResp);
//                     if (userInfo) {
//                         WXCtr.wxLoginSuccess = true;
//                         GameCtr.login(loginResp.code, userInfo, true);
//                     }
//                     //获取用户信息
//                     tt.getUserInfo({
//                         openIdList: ['selfOpenId'],
//                         success: function (res) {
//                             let info = res.userInfo;
//                             let data = {
//                                 avatarUrl: info.avatarUrl,
//                                 city: info.city,
//                                 country: info.country,
//                                 gender: info.gender,
//                                 language: info.language,
//                                 nickName: info.nickName,
//                                 openId: info.openId,
//                                 province: info.province,
//                             };

//                             GameCtr.login(loginResp.code, data);
//                             WXCtr.wxLoginSuccess = true;
//                             console.log("获取自己信息返回值", res);
//                         },
//                         fail: function (res) {
//                             console.log("获取自己信息失败", res);
//                         }
//                     })
//                     WXCtr.getShareConfig();
//                     // GameCtr.getReviveData();
//                 },
//                 fail: function (res) {

//                 }
//             })
//         }
//     }

//     //获取自己信息
//     static getSelfData() {
//         if (tt != undefined) {
//             // 发消息给子域
//             tt.postMessage({
//                 messageType: Message_Type.Get_SelfData,
//             });
//         } else {
//         }
//     }

//     //获取分享配置
//     static getShareConfig() {
//         Http.send({
//             url: Http.UrlConfig.GET_SHARE,
//             success: (resp) => {
//                 console.log("获取分享配置信息", resp);
//                 WXCtr.shareTitle = resp.data[0].title;
//                 WXCtr.shareImg = resp.data[0].thumb;
//                 WXCtr.randShare();
//                 wx.onShareAppMessage(function () {
//                     return {
//                         title: WXCtr.shareTitle,
//                         imageUrl: WXCtr.shareImg,
//                     }
//                 });
//             },
//             data: {
//                 zdid: "190",
//             }
//         });
//     }

//     static randShare() {
//         // let xx = WXCtr.sharenum % WXCtr._shareTitlearr.length;
//         // WXCtr.sharenum++;
//         // WXCtr.shareTitle = WXCtr._shareTitlearr[xx];
//         // WXCtr.shareImg = WXCtr._shareImgarr[xx];
//     }

//     //获取好友排行榜数据
//     static getFriendRankingData() {
//         if (tt != undefined) {
//             // 发消息给子域
//             tt.postMessage({
//                 messageType: Message_Type.Get_FriendData,
//                 LIST_KEY: "Rank_Data"
//             });
//         }
//     }


//     //获取群数据
//     static getGroupRankingData() {
//         console.log("获取群数据！！！！！！");
//         if (tt != undefined) {
//             WXCtr.randShare();
//             tt.shareAppMessage({
//                 title: WXCtr.shareTitle,
//                 imageUrl: WXCtr.shareImg,
//                 success: (res) => {
//                     console.log("分享成功回调返回值", res);
//                     if (res.shareTickets != undefined && res.shareTickets.length > 0) {
//                         tt.postMessage({
//                             messageType: Message_Type.Get_GroupData,
//                             LIST_KEY: "Rank_Data",
//                             shareTicket: res.shareTickets[0]
//                         });
//                     }
//                 }
//             });
//         }
//     }

//     //分享 revive是否是复活分享
//     static share(revive: boolean = false, complete: Function = null, failCall: Function = null) {
//         if (tt != undefined) {
//             WXCtr.randShare();
//             tt.shareAppMessage({
//                 title: WXCtr.shareTitle,
//                 imageUrl: WXCtr.shareImg,
//                 query: "key=fdsfsdf&key2=val2",
//                 success: (res) => {
//                     if (complete != null) {
//                         complete();
//                     }
//                     console.log("分享成功回调返回值", res);
//                     if (revive) {
//                         if (res.shareTickets != undefined && res.shareTickets.length > 0) {
//                             console.log("分享到群成功");
//                             WXCtr.getWxShareInfo(res.shareTickets[0]);
//                         } else {
//                             GameCtr.getGold("friend");
//                         }
//                     }
//                     else {

//                     }
//                 },
//                 fail: function (res) {
//                     console.log("sharecomplete");
//                     if (failCall != null) {
//                         failCall();
//                     }
//                     console.log("sharefail");
//                 },
//                 complete: (res) => {
//                     console.log("sharecomplete");
//                 }
//             });
//         } else {

//         }
//     }

//     //分享 revive是否是复活分享
//     static shareHlep(completeCall: Function = null, failCall: Function = null) {
//         if (tt != undefined) {
//             let querystr = cc.js.formatStr("Send_user_id=%s&isInvite=false", UserManager.user_id);
//             WXCtr.randShare();
//             tt.shareAppMessage({
//                 title: WXCtr.shareTitle,
//                 imageUrl: WXCtr.shareImg,
//                 query: querystr,
//                 success: (res) => {
//                     console.log("分享成功回调返回值success", res);
//                 },
//                 complete: (res) => {
//                     console.log("分享成功回调返回值complete");
//                     if (completeCall != null) {
//                         completeCall();
//                     }
//                 },
//                 fail: (res) => {
//                     console.log("分享成功回调返回值fail");
//                     if (failCall != null) {
//                         failCall();
//                     }
//                 }
//             });
//         } else {

//         }
//     }

//     //分享 邀请
//     static shareInvite(completeCall: Function = null, failCall: Function = null) {
//         if (tt != undefined) {
//             let querystr = cc.js.formatStr("Send_user_id=%s&isInvite=true", UserManager.user_id);
//             WXCtr.randShare();
//             tt.shareAppMessage({
//                 title: WXCtr.shareTitle,
//                 imageUrl: WXCtr.shareImg,
//                 query: querystr,
//                 success: (res) => {
//                     console.log("分享成功回调返回值success", res);

//                 },
//                 complete: (res) => {
//                     console.log("分享成功回调返回值complete");
//                     if (completeCall != null) {
//                         //  completeCall();
//                     }
//                 },
//                 fail: (res) => {
//                     console.log("分享成功回调返回值fail");
//                     if (failCall != null) {
//                         failCall();
//                     }
//                 }
//             });
//         } else {

//         }
//     }

//     //分享 刷新
//     static shareRefesh() {
//         if (tt != undefined) {
//             WXCtr.randShare();
//             tt.shareAppMessage({
//                 title: WXCtr.shareTitle,
//                 imageUrl: WXCtr.shareImg,
//                 query: "",
//                 success: (res) => {
//                     console.log("shareRefeshsuccess");
//                 },
//                 complete: (res) => {
//                     console.log("shareRefeshcomplete");
//                     // GameCtr.setResurgence(1);
//                 }
//             });
//         } else {

//         }
//     }

//     //获取分享转发详细信息
//     static getWxShareInfo(shareTicket) {
//         if (tt != undefined) {
//             tt.getShareInfo({
//                 shareTicket: shareTicket,
//                 success: (resp) => {
//                     console.log("获取分享信息成功！！！", resp);
//                     GameCtr.shareGroupCheck(resp.encryptedData, resp.iv);
//                 },
//             });
//         }
//     }


//     //显示结束界面好友排行
//     static showOverRanking() {
//         if (tt != undefined) {
//             console.log("主域发送消息____显示结束好友排行");
//             tt.postMessage({
//                 messageType: Message_Type.Show_OverRanking,
//             });
//         }
//     }

//     //显示完整好友排行
//     static showFriendRanking() {
//         if (tt != undefined) {
//             console.log("主域发送消息____显示好友排行");
//             tt.postMessage({
//                 messageType: Message_Type.Show_WholeRanking,
//             });
//         }
//     }

//     //关闭好友排行
//     static closeFriendRanking() {
//         if (tt != undefined) {
//             console.log("主域发送消息____关闭好友排行");
//             tt.postMessage({
//                 messageType: Message_Type.Close_WholeRanking,
//             });
//         }
//     }

//     //提交分数到微信
//     static submitScoreToWx(score) {
//         if (tt != undefined) {
//             console.log("主域发送消息____提交分数");
//             tt.postMessage({
//                 messageType: Message_Type.Submit_SelfScore,
//                 LIST_KEY: "Rank_Data",
//                 score: score,
//             });
//         }
//     }


//     ////////////////////////////////////////////////////////////////////////////////
//     ////////////////////////////////////////////////////////////////////////////////////////
//     //banner广告
//     static setBannerAd(bannerId) {
//         if (bannerId != null || bannerId != undefined) {
//             if (tt != undefined) {
//                 if (WXCtr.bannerAd) {
//                     WXCtr.bannerAd.destroy();
//                 }
//                 WXCtr.bannerAd = wx.createBannerAd({
//                     adUnitId: bannerId,
//                     style: {
//                         left: 40,
//                         top: WXCtr.Height - 100 * WXCtr.Height / I6P.h - 10,
//                         width: 200,
//                     }
//                 });
//                 WXCtr.showBannerAd();
//             }
//         }
//     }

//     static setVideoAd(videoId) {
//         if (tt != undefined) {
//             WXCtr.videoAd = wx.createRewardedVideoAd({ adUnitId: videoId });
//             WXCtr.videoAd.onLoad(() => {
//                 console.log('banner 广告加载成功')
//             });
//             WXCtr.videoAd.load();
//             WXCtr.videoAd.onError(err => {
//                 console.log(err)
//             });
//             WXCtr.videoAd.onClose(() => {
//                 WXCtr.onCloseVideo();
//             })
//         }
//     }

//     static restoreVideoAdOnClose(callback: Function = null) {
//         WXCtr.videoAd.onClose(() => {
//             if (callback != null) {
//                 WXCtr.videoAd.offClose(callback);
//             }
//             WXCtr.videoAd.onClose(WXCtr.videoAdCallback);
//         });
//         WXCtr.setBannerAd(WXCtr.advid);
//     }

//     static showVideoAd(callback: Function = null) {
//         if (WXCtr.videoAd) {
//             WXCtr.hideBannerAd();
//             WXCtr.videoAd.onClose(() => {
//                 callback();
//             })
//             WXCtr.videoAd.show();
//         }
//     }

//     static showBannerAd() {
//         if (cc.isValid(WXCtr.bannerAd) && WXCtr.bannerAd) {
//             WXCtr.bannerAd.show();
//         }
//     }

//     static hideBannerAd() {
//         if (cc.isValid(WXCtr.bannerAd) && WXCtr.bannerAd) {
//             WXCtr.bannerAd.hide();
//         }
//     }

//     static getAdConfig() {
//         Http.send({
//             url: UrlConfig.ADConfig,
//             success: (res) => {
//                 console.log("获取广告配置", res);
//                 if (res.data.videoid) {
//                     WXCtr.setVideoAd(res.data.videoid);
//                 }
//                 if (res.data.advid) {
//                     WXCtr.advid = res.data.advid;
//                     WXCtr.setBannerAd(WXCtr.advid);
//                 }
//             },
//             data: {
//                 user_id: UserManager.user_id
//             }
//         });
//     }



//     static videoCheck(query) {
//         Http.send({
//             url: UrlConfig.VideoOpen,
//             data: {
//                 user_id: UserManager.user_id,
//                 channel_id: query.channel_id,
//                 cuid: query.cuid,
//                 cvoucher: query.cvoucher,
//                 cid: query.cid,
//                 pid: query.pid
//             }
//         });
//     }

//     static onCloseVideo() {
//         // 用户点击了【关闭广告】按钮
//         WXCtr.videoCheck(WXCtr.launchOption.query);
//         WXCtr.showBannerAd();
//         if (cc.director.getScene().name == "End") {
//             GameCtr.revive();
//         }
//         else if (cc.director.getScene().name == "fkxxl") {

//         }
//     }

//     //导航到其他小程序
//     static gotoOther(data) {
//         if (data.url) {
//             console.log("data = ", data.url);

//             data.url = data.url.replace("appid://", "");
//             console.log("data = ", data);
//             wx.navigateToMiniProgram({
//                 appId: data.url,
//                 path: data.path,
//                 success(res) {
//                     // 打开成功
//                     console.log('打开成功');

//                 },
//                 fail(err) {
//                     wx.showToast({
//                         title: '打开失败!',
//                         icon: 'none'
//                     })
//                 }
//             })
//         }
//     }

//     //打开客服消息
//     static customService() {
//         wx.openCustomerServiceConversation();
//     }

//     // update (dt) {}
// }
